/*
 * Leer un número por teclado y que almacene en un fichero de texto la tabla de multiplicar de 
 dicho número. El fichero se llamará "fichero_[núm_pasado].txt".
 */
package google_code_refact;

import java.io.*;

/**
 *
 * @author Mow
 */
public class ManejoFicheros {

    //atributos
    private BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
    private PrintWriter pw;
    private String ruta = "/home/dany/Dropbox/DAM/Entornos/Refactorizacion/";
    private File f;
    private int num = 0;
    private BufferedReader fichero;
    private String cadena = "";
    private PedirNumero introNum = new PedirNumero();

    //Escribe en un fichero la tabla de multiplicar del número que le pasemos por teclado
    public void escribir_fichero() {
        num = introNum.introducir_numeros(num);
        f = new File(ruta + "fichero_" + num + ".txt");
        if (f.exists()) {
            System.err.println("El fichero ya existe.");
        } else {
            try {
                pw = new PrintWriter(new BufferedWriter(new FileWriter(ruta + "fichero_" + num + ".txt")));
                for (int i = 0; i <= 10; i++) {
                    pw.println(num + " * " + i + " = " + (num * i));
                }
                pw.close();
            } catch (Exception e1) {
                System.err.println("Error en la escritura");
            }
        }
    }
    //Busca el fichero del numero, en caso de que exista muestra el fichero 
    //si no existe, muestra un error.
    public void mostrar_fichero() {        
        num = introNum.introducir_numeros(num);
        f = new File(ruta + "fichero_" + num + ".txt");
        if (f.exists()) {
            try {
                fichero = new BufferedReader(new FileReader(ruta + "fichero_" + num + ".txt"));
                cadena = fichero.readLine();
                while (cadena != null) {
                    System.out.println(cadena);
                    cadena = fichero.readLine();
                }
                fichero.close();
            } catch (Exception e1) {
                System.err.println("Error de lectura.");
                System.err.println(e1);
            }

        } else {
            System.err.println("El fichero solicitado no existe.");
        }
    }
}
